The present invention is concerned with video coding.
Video compression techniques developed over the last 20 years have been based on motion compensated transform coding. The basic idea is to encode one image, and use this image as a prediction for the next image, thus removing temporal redundancy, and encode the prediction residual with a block based transform coding technique. Each subsequent image can be predicted from the previously encoded image(s).
The source picture is usually divided into 16×16 regions called macroblocks. The encoder searches one or more previously encoded and stored pictures for a good match or prediction for the current macroblock. The displacement between the macroblock in the reference picture co-located with the current macroblock and the region of pixels used for prediction of the current macroblock is known as a motion vector. Some standards only allow one motion vector per macroblock, whereas others allow the macroblock to be sub-divided and different reference pictures and different motion vectors to be selected and encoded for each sub-division.
An alternative to using prediction from a previous picture, known as inter coding, to encode a macroblock, is to encode the macroblock without reference to a previously encoded picture. This is called intra coding. In early compression standards this was achieved simply by missing the subtractor and transforming and quantising the source picture directly. In later standards, various forms of spatial prediction, using already coded pixels of the current picture, are used to remove redundancy from the source macroblock before the transform and quantisation processes.
The difference between the source picture and the prediction, known as the prediction error, or prediction residual, is usually transformed to the frequency domain using a block based transform, and is then quantised with a scalar quantiser, and the resulting quantised coefficients are entropy coded.
A range of scalar quantisers is usually available to allow the distortion introduced by the quantisation process to be traded off against the number of bits produced by the entropy coding in order to meet some pre-determined bit rate constraint, such as to achieve a constant bit rate for transmission over a constant bit rate network.
A number of international standards for video coding and decoding have been promulgated, notably the H series of standards from the ITU and the ISO/IEC MPEG series. The algorithm used to select the scalar quantiser for a given block of the prediction error is outside the scope of the video compression standards.
According to the present invention there is provided a method of coding a video signal, comprising:
(a) analysing pictures to obtain, in respect of each region thereof analysed, a measure of predictive power, each measure being dependent on the similarity of the region to another region for which it is a potential predictor, and
(b) coding the signal, using differential coding, with a resolution that varies as a function of the measures of predictive power.
Other aspect of the invention are defined in the claims.